Machine vision based automated inspection systems are widely used to analyze geometric patterns on objects. Typical applications for such systems include the inspection of electrical circuits on printed circuit boards (“PCBs”), flat panel displays, ball grid array substrates, semiconductor chips, reticules, electronic components assembled on PCBs, and the like.
Optical inspection of PCBs, which have metalized conductor portions and unmetalized substrate portions, is performed by: (i) illuminating a portion of a surface of the PCB, (ii) acquiring an image of the illuminated surface portion, and (iii) analyzing brightness over the surface to define conductors in the image. Defects in the PCB are determined by analyzing the image with respect to a reference image and a with respect to a set of standards or rules to determine deviations from the reference and whether the conductors meet certain rules.
Among prior art publications which describe such methods are U.S. Pat. Nos. 4,758,888, 5,586,058, 5,619,429, 5,774,572, and 5,774,573, the disclosures of which are incorporated by reference.
In one conventional method of PCB inspection, employed in various automated optical inspection systems sold by Orbotech Ltd. of Yavne, Israel, a PCB is illuminated with a polychromatic light source and a gray level image of the PCB is acquired at an optical resolution. In the gray level image, pixels are categorized into one of three populations according to brightness: substrate, conductor and regions of intermediate brightness which typically comprise edges between substrate and conductor. The precise location of edges between conductor and substrate are determined to a sub-pixel accuracy and edges that are located in regions of substrate or conductor are discarded. The remaining edges are used to produce a binary representation of the PCB having a resolution which is greater than the optical resolution. The binary image is analyzed to determine defects in the shape of conductors in the electrical circuit.
U.S. Pat. Nos. 5,586,058 and 5,619,429 describe and show an inspection system for inspecting patterned objects such as semiconductor wafers and reticules including a hardware based fine defect inspection pipeline operative to inspect a binary image of the object and a hardware based ultra fine defect inspection pipeline operating substantially in parallel to the fine defect inspection pipeline and operative to inspect a gray level image of the object. The system additionally includes a software based post-processor which is operative to receive real time recorded representations of locations of the inspected object along with binary or gray level reference information. The representations are derived from the same images employed by the fine and ultra-fine inspection pipelines, and are reanalyzed to filter false alarms and to categorize the defects.
One problem typically encountered in automated optical inspection of PCBs occurs when conductor portions on the PCB are oxidized. Oxidation is often merely a superficial blemish that does not affect PCB functionality and as such should not result in the determination of the oxidized region as being defective. However, oxidized conductors typically have a brightness value that is different from the brightness value for non-oxidized metal. Typically the brightness value for oxidation in a red monochrome image for a PCB is intermediate of the respective values of non-oxidized metal and substrate, such that conventional gray level processing does not effectively identify and handle oxidation. Consequently, oxidized portions may be speciously classified as being substrate, even though it is desirable to classify the oxidized portion as being a metalized portion.
As a result, in conventional image inspection methods, conductor portions in the vicinity of oxidization may fail to meet predetermined rules, thus resulting in a specious detection of a defect. For example, metalized portions in the vicinity of oxidation may be speciously classified as having undesired pinholes or as failing to obtain a minimum line width. This problem is particularly prevalent adjacent to border regions between metalized portions and substrate which typically have brightness values that are intermediate of conductor and substrate.
In the PCT Publication application, WO 00/11454, entitled “Inspection of Printed Circuit Boards Using Color”, the disclosure of which is incorporated herein by reference, color image processing is used to identify oxidation on PCB conductors. Oxidation is identified by characteristic colors that are different from both non-oxidized metal and substrate. The color processing typically is applied as part of a gray level processing pipeline which is supplemental to binary image processing. Pixels that have a color which is characteristic of oxide are classified as such, and are then treated as if they are unoxidized metal.